package com.dify.domain.resp;



import java.io.Serializable;
import java.util.Map;

/**
 * Dify阻塞式调用响应.
 */

public class BlockResponse implements Serializable {

    /**
     * 不同模式下的事件类型.
     */
    private String event;

    /**
     * 消息唯一 ID.
     */
    private String messageId;

    /**
     * 任务ID.
     */
    private String taskId;

    /**
     * agent_thought id.
     */
    private String id;

    /**
     * 会话 ID.
     */
    private String conversationId;

    /**
     * App 模式，固定为 chat.
     */
    private String mode;

    /**
     * 完整回复内容.
     */
    private String answer;

    /**
     * 元数据.
     */
    private Map<String, Map<String, String>> metadata;

  //  private Map<String, Object> metadata;

    /**
     * 创建时间戳.
     */
    private Long createdAt;


    public String getEvent() {
        return event;
    }

    public void setEvent(String event) {
        this.event = event;
    }

    public String getMessageId() {
        return messageId;
    }

    public void setMessageId(String messageId) {
        this.messageId = messageId;
    }

    public String getTaskId() {
        return taskId;
    }

    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getConversationId() {
        return conversationId;
    }

    public void setConversationId(String conversationId) {
        this.conversationId = conversationId;
    }

    public String getMode() {
        return mode;
    }

    public void setMode(String mode) {
        this.mode = mode;
    }

    public String getAnswer() {
        return answer;
    }

    public void setAnswer(String answer) {
        this.answer = answer;
    }

    public Map<String, Map<String, String>> getMetadata() {
        return metadata;
    }

    public void setMetadata(Map<String, Map<String, String>> metadata) {
        this.metadata = metadata;
    }

    public Long getCreatedAt() {
        return createdAt;
    }

    public void setCreatedAt(Long createdAt) {
        this.createdAt = createdAt;
    }
}